Skip to content
New issue

Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.

By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.

Already on GitHub? Sign in to your account

Change threading model for higher parallelism and throughput #249

Merged
merged 28 commits into from
Feb 1, 2024

Conversation

CapCap
Copy link
Contributor

@CapCap CapCap commented Jan 23, 2024

instead of waiting for the grpc fetch batch to complete, and then the workers to complete, this passes each grpc fetch directly to a worker thread

@CapCap CapCap changed the base branch from main to max_cdb_migrations January 23, 2024 06:36
CapCap added a commit that referenced this pull request Feb 14, 2024
Remove transactions and make migrations not async

lint

fmt

clippy

diesel async TLS sslrootcert

lint

lint

support optional tls

format

more log

parallel inserst

lint

bigger pool

pool size 200

try bigger buffer

try fixed 100 insert size

use ahash + update rust

smaller batches, bigger pool

increase pool size to 800

small refac for readability

increase buffer to 150

try batch size 20

back to 100 buffer

refactor grpc into separate file

lint

try 40mb buffers

insert of 10 again

ARC instead of cloning txns

lint

avoid another clone

try size 50

try 100

tryp 65

Change threading model for higher parallelism and throughput (#249)

Co-authored-by: jillxuu <[email protected]>

clean

cleanup

try 200 connections

coin processor spawn blocking

sleep well

ARC and consistent parallelism

database parallelism undo

no CDB compat
CapCap added a commit that referenced this pull request Feb 16, 2024
Remove transactions and make migrations not async

lint

fmt

clippy

diesel async TLS sslrootcert

lint

lint

support optional tls

format

more log

parallel inserst

lint

bigger pool

pool size 200

try bigger buffer

try fixed 100 insert size

use ahash + update rust

smaller batches, bigger pool

increase pool size to 800

small refac for readability

increase buffer to 150

try batch size 20

back to 100 buffer

refactor grpc into separate file

lint

try 40mb buffers

insert of 10 again

ARC instead of cloning txns

lint

avoid another clone

try size 50

try 100

tryp 65

Change threading model for higher parallelism and throughput (#249)

Co-authored-by: jillxuu <[email protected]>

clean

cleanup

try 200 connections

coin processor spawn blocking

sleep well

ARC and consistent parallelism

database parallelism undo

no CDB compat

Use gap detector

Don't panic in gaps

TEMP CHANGE FOR LOAD TEST

send in chunks

gap detector bigger

parallel writes to db

try chunks of 40

5k gap

fix channel length

post load test cleanup

temporary execute in chunks

cleanup and comments

Add config for table chunk size

cleanup
rtso pushed a commit that referenced this pull request Feb 22, 2024
Remove transactions and make migrations not async

lint

fmt

clippy

diesel async TLS sslrootcert

lint

lint

support optional tls

format

more log

parallel inserst

lint

bigger pool

pool size 200

try bigger buffer

try fixed 100 insert size

use ahash + update rust

smaller batches, bigger pool

increase pool size to 800

small refac for readability

increase buffer to 150

try batch size 20

back to 100 buffer

refactor grpc into separate file

lint

try 40mb buffers

insert of 10 again

ARC instead of cloning txns

lint

avoid another clone

try size 50

try 100

tryp 65

Change threading model for higher parallelism and throughput (#249)

Co-authored-by: jillxuu <[email protected]>

clean

cleanup

try 200 connections

coin processor spawn blocking

sleep well

ARC and consistent parallelism

database parallelism undo

no CDB compat

Use gap detector

Don't panic in gaps

TEMP CHANGE FOR LOAD TEST

send in chunks

gap detector bigger

parallel writes to db

try chunks of 40

5k gap

fix channel length

post load test cleanup

temporary execute in chunks

cleanup and comments

Add config for table chunk size

cleanup
rtso pushed a commit that referenced this pull request Feb 29, 2024
Remove transactions and make migrations not async

lint

fmt

clippy

diesel async TLS sslrootcert

lint

lint

support optional tls

format

more log

parallel inserst

lint

bigger pool

pool size 200

try bigger buffer

try fixed 100 insert size

use ahash + update rust

smaller batches, bigger pool

increase pool size to 800

small refac for readability

increase buffer to 150

try batch size 20

back to 100 buffer

refactor grpc into separate file

lint

try 40mb buffers

insert of 10 again

ARC instead of cloning txns

lint

avoid another clone

try size 50

try 100

tryp 65

Change threading model for higher parallelism and throughput (#249)

Co-authored-by: jillxuu <[email protected]>

clean

cleanup

try 200 connections

coin processor spawn blocking

sleep well

ARC and consistent parallelism

database parallelism undo

no CDB compat

Use gap detector

Don't panic in gaps

TEMP CHANGE FOR LOAD TEST

send in chunks

gap detector bigger

parallel writes to db

try chunks of 40

5k gap

fix channel length

post load test cleanup

temporary execute in chunks

cleanup and comments

Add config for table chunk size

cleanup
CapCap added a commit that referenced this pull request Mar 6, 2024
Remove transactions and make migrations not async

lint

fmt

clippy

diesel async TLS sslrootcert

lint

lint

support optional tls

format

more log

parallel inserst

lint

bigger pool

pool size 200

try bigger buffer

try fixed 100 insert size

use ahash + update rust

smaller batches, bigger pool

increase pool size to 800

small refac for readability

increase buffer to 150

try batch size 20

back to 100 buffer

refactor grpc into separate file

lint

try 40mb buffers

insert of 10 again

ARC instead of cloning txns

lint

avoid another clone

try size 50

try 100

tryp 65

Change threading model for higher parallelism and throughput (#249)

Co-authored-by: jillxuu <[email protected]>

clean

cleanup

try 200 connections

coin processor spawn blocking

sleep well

ARC and consistent parallelism

database parallelism undo

no CDB compat

Use gap detector

Don't panic in gaps

TEMP CHANGE FOR LOAD TEST

send in chunks

gap detector bigger

parallel writes to db

try chunks of 40

5k gap

fix channel length

post load test cleanup

temporary execute in chunks

cleanup and comments

Add config for table chunk size

cleanup
CapCap added a commit that referenced this pull request Mar 11, 2024
Remove transactions and make migrations not async

lint

fmt

clippy

diesel async TLS sslrootcert

lint

lint

support optional tls

format

more log

parallel inserst

lint

bigger pool

pool size 200

try bigger buffer

try fixed 100 insert size

use ahash + update rust

smaller batches, bigger pool

increase pool size to 800

small refac for readability

increase buffer to 150

try batch size 20

back to 100 buffer

refactor grpc into separate file

lint

try 40mb buffers

insert of 10 again

ARC instead of cloning txns

lint

avoid another clone

try size 50

try 100

tryp 65

Change threading model for higher parallelism and throughput (#249)

Co-authored-by: jillxuu <[email protected]>

clean

cleanup

try 200 connections

coin processor spawn blocking

sleep well

ARC and consistent parallelism

database parallelism undo

no CDB compat

Use gap detector

Don't panic in gaps

TEMP CHANGE FOR LOAD TEST

send in chunks

gap detector bigger

parallel writes to db

try chunks of 40

5k gap

fix channel length

post load test cleanup

temporary execute in chunks

cleanup and comments

Add config for table chunk size

cleanup
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Labels
None yet
Projects
None yet
Development

Successfully merging this pull request may close these issues.

2 participants